The Role of Return Value Prediction in Exploiting Speculative Method-Level Parallelism
نویسندگان
چکیده
This work studies the performance impact of return value prediction in a system that supports speculative method-level parallelism (SMLP). A SMLP system creates a speculative thread at each method call. This allows the method and the code from which it is called to be executed in parallel. To improve performance, the return values of methods are predicted in hardware so that no method has to wait for its sub-method to complete before continuing to execute. We find that two-thirds of return values need to be predicted, and perfect return value prediction improves performance by an average of 44% over no return value prediction. However, the performance of realistic predictors is limited by poor prediction accuracy on integer return values and unfavorable SMLP conditions. A new Parameter Stride (PS) predictor is proposed to overcome the deficiencies of the standard predictors by predicting based on method arguments. Combining the PS predictor with previous predictors results in an average 7% speedup versus a system with hybrid return value prediction and 21% speedup versus no return value prediction.
منابع مشابه
Exploiting Speculative Value Reuse Using Value Prediction
Data dependencies between instructions greatly impede instruction-level parallelism. Recently two hardware techniques – Value Prediction and Value Reuse – have been proposed to overcome the limits imposed by data dependencies. We introduce a new hardware scheme for exploiting speculative value reuse by using value prediction. We propose a new microarchitecture which uses value prediction to pro...
متن کاملExploiting Thread-Level Speculative Parallelism with Software Value Prediction
Software value prediction (SVP) is an effective and powerful compilation technique helping to expose thread-level speculative parallelism. With the help of value analysis and profiling, the compiler identifies critical and predictable variable values and generates speculatively parallelized programs with appropriate value prediction and misprediction recovery code. In this paper, we examine thi...
متن کاملReturn Value Prediction meets Information Theory
Accurate return value prediction is a key tool for enabling effective speculative method-level parallelism, which will be a standard feature in the next generation of chip-multiprocessor architectures. In this paper we give some information theoretic measures that indicate intrinsic predictability of method return values. This is in stark contrast to the current ad-hoc heuristic measures impose...
متن کاملCompiler Analyses for Improved Return Value Prediction
Speculative method-level parallelism has been shown to benefit from return value prediction. In this paper we propose and analyse two compiler analyses designed to improve the cost and performance of a hybrid return value predictor in a Java virtual machine setting. A return value use analysis determines which return values are consumed, and enables us to eliminate 2.6% of all non-void dynamic ...
متن کاملSpeculative Multithreading in a Java Virtual Machine
Speculative multithreading (SpMT) is a dynamic program parallelisation technique that promises dramatic speedup of irregular, pointer-based programs as well as numerical, loop-based programs. We present the design and implementation of software-only SpMT for Java at the virtual machine level. We take the full Java language into account and we are able to run and analyse real world benchmarks in...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- J. Instruction-Level Parallelism
دوره 5 شماره
صفحات -
تاریخ انتشار 2003